Various embodiments of the present invention relate to the development of network applications, and more specifically, to a method and apparatus for developing a Rich Internet Application (RIA).
With the development of Internet technology, web-based applications now can provide increasingly powerful functions. So far there has been proposed a RIA technology that is gradually replacing a traditional, web page-based development mode.
The traditional development pattern of web applications is page based. When a user clicks on a certain web element (e.g. a link) in a current web page, the web application will be redirected to a new link address and load a new web page. Although most of the content in the new web page is the same as content in the current web page (such as the title bar at the top of the web page, the navigation bar at the left of the page, etc.), since the new web page corresponds to a new URL address, the same content still needs to be reloaded when displaying the new web page.
RIAs make it possible to modify part of contents in a web page without refreshing the entire web page, providing an improvement to web page-based applications. With the RIA technology, it is possible to build only one web page and implement desired functions by controlling the displayed contents of the page. Thereby, repeated efforts for building a plurality of web pages can be reduced greatly, thereby enhancing the working efficiency of developers.
Nevertheless, since RIAs are integrated with functions that used to be performed by a plurality of web pages, the complexity of RIA code will be raised significantly. Typically, when developing a RIA, a huge code set might be involved, which usually comprises various types of code (such as Hypertext Markup Language HTML code, JavaScript code, and Cascading Style Sheets CSS code). Moreover, collaboration of a couple of developers is usually needed in developing the RIA. During development by a plurality of developers, each developer may edit part of code in the code set. After various developers complete their work, codes developed by them are integrated together for debugging. However, as developers may be unaware of the code details of other developers during development, codes written by different developers might have some conflicts. These conflicts may not be detectable when using existing development tools. As a result, many problems may arise when debugging an entire RIA, and source of the problems may not be rapidly locatable using existing technical solutions.